package com.wzdigit.wms.basic.client.response.transfer;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.wzdigit.wms.basic.client.BasicResponse;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 调拨单管理细列表-BS端
 */
@Data
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties(value = {"hibernateLazyInitializer", "handler", "fieldHandler"}, ignoreUnknown = true)
public class TransferRawDtlResponse  extends BasicResponse {

	private static final long serialVersionUID = -1527112122655248398L;

    /**
     * 调拨单明细ID
     */
    @ApiModelProperty(value = "调拨单明细ID", required = false)
    private Integer transferDtlId;

    /**
     * 调拨单行号
     */
    @ApiModelProperty(value = "调拨单行号", required = false)
    private String transferLineNo;

    /**
     * 状态
     */
    @ApiModelProperty(value = "状态", required = false)
    private Integer status;

    /**
     * 来源单行号
     */
    @ApiModelProperty(value = "来源单行号", required = false)
    private String sourceLineNo;

    /**
     * 物料编码
     */
    @ApiModelProperty(value = "物料编码", required = false)
    private String skuCode;

    /**
     * 物料描述
     */
    @ApiModelProperty(value = "物料描述", required = false)
    private String descCn;

    /**
     * 客户型号
     */
    @ApiModelProperty(value = "客户型号", required = false)
    private String model;

    /**
     * ERP移动类型
     */
    @ApiModelProperty(value = "ERP移动类型", required = false)
    private String erpMoveType;

    /**
     * 调拨数量
     */
    @ApiModelProperty("调拨数量")
    private BigDecimal orderQty;

    /**
     * 完成数量
     */
    @ApiModelProperty("完成数量")
    private BigDecimal cmpQty;

    /**
     * 在途数量
     */
    @ApiModelProperty("在途数量")
    private BigDecimal transitQty;

    /**
     * 已拣数量
     */
    @ApiModelProperty("已拣数量")
    private BigDecimal pickQty;

    /**
     * 订单号
     */
    @ApiModelProperty("订单号")
    private String fmPo;

    /**
     * 转出组织
     */
    @ApiModelProperty(value = "转出组织", required = false)
    private String fmFactory;

    /**
     * 转入组织
     */
    @ApiModelProperty(value = "转入组织", required = false)
    private String toFactory;

    /**
     * 转出销售订单
     */
    @ApiModelProperty(value = "转出销售订单", required = false)
    private String fmSoNo;

    /**
     * 转入销售订单
     */
    @ApiModelProperty(value = "转入销售订单", required = false)
    private String toSoNo;

    /**
     * 转出销售订单项目
     */
    @ApiModelProperty(value = "转出销售订单项目", required = false)
    private String fmSoLineNo;

    /**
     * 转入销售订单项目
     */
    @ApiModelProperty(value = "转入销售订单项目", required = false)
    private String toSoLineNo;

    /**
     * 调拨日期
     */
    @ApiModelProperty("调拨日期")
    private Date transferTime;

    /**
     * 归还时间
     */
    @ApiModelProperty("归还时间")
    private Date returnTime;
}